﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using MySql.Data.MySqlClient;

namespace DMU.Gui.GuiPro
{
    public partial class frmThemHangHoa : DevExpress.XtraEditors.XtraForm
    {
        
        private bool gt=true;
        private ucHoangHoa ucSV;

        Service sv = new Service();
        help hp = new help();

        
        public frmThemHangHoa(ucHoangHoa uc)
        {
            InitializeComponent();
            this.ucSV = uc;
            
        }

       /* private MySqlParameter[] getPara(string MS, string ho, string ten, string ngS, string nS, bool gt, string kHoc, string maLop, bool active)
        {
            MySqlParameter[] pr = new MySqlParameter[10];
            pr[0] = new MySqlParameter("MSSV0", MS);
            pr[1] = new MySqlParameter("HoLot0", ho);
            pr[2] = new MySqlParameter("Ten0", ten);
            pr[3] = new MySqlParameter("NgaySinh0",ngS);
            pr[4] = new MySqlParameter("NoiSinh0", nS);
            pr[5] = new MySqlParameter("GioiTinh0",gt);
            pr[6] = new MySqlParameter("KhoaHoc0", kHoc);
            pr[7] = new MySqlParameter("MaLop0",maLop);
            pr[8] = new MySqlParameter("IsActive0",active);
            pr[9] = new MySqlParameter("MaTruong0",Service.info[4]);
            return pr;
        }

      /*    private string[] getInfo()
        {
          string[] st = new string[9];
            st[0] = txtMa.Text;
            st[1] = txtHo.Text;
            st[2] = txtTen.Text;
            st[3] = dteNgayS.Text;
            st[4] = txtNoiSinh.Text;
            st[5] = gt.ToString();
            st[6] = txtKH.Text;
            st[7] = lkpLop.EditValue.ToString();
            st[8] = chkActive.Checked.ToString();

            return st;
            
        }

        private void btnLuu_Click(object sender, EventArgs e)
        {
            if (!dxValidationProvider1.Validate())
            {
                return;
            }
            try
            {
                MySqlParameter[] pr=getPara(txtMa.Text, txtHo.Text, txtTen.Text, dteNgayS.Text, txtNoiSinh.Text, gt, txtKH.Text, lkpLop.EditValue.ToString(), chkActive.Checked);
                if (ucSV.them)
                {
                    string s=sv.executeScalarStore("dmu_proSThemSV", pr);
                    if ( s== "2")
                    {
                        hp.showMes("Mã lớp không tồn tại vui lòng chọn kiểm tra lại !", 1);
                        lkpLop.Focus();
                    }
                    else if (s == "0")
                    {
                        hp.showMes("Mã này đã tồn tại vui lòng chọn mã khác !", -1);
                        txtMa.Focus();
                    }
                    else
                    {
                        sv.addRow(ucSV.dtSV, getInfo());
                        txtMa.Text = txtTen.Text = txtHo.Text = ""; txtMa.Focus();
                    }

                }
                else
                {
                    if (sv.executeNonqueryStore("dmu_proSSuuSV", pr))
                    {
                        DataRow row = ucSV.dtSV.Rows[ucSV.BindingContext[ucSV.dtSV].Position];
                        sv.updateRow(row,getInfo());
                        this.Close();
                    }
                    else
                        hp.showMes("Thao tác không thành công !. Kiểm tra lại dữ liệu ", 1);
                }
            }
            catch (Exception et)
            {
                hp.showMes("Thao tác không thành công !! Lỗi" + et.Message, 1);
            }
        }
        

        #region load Từ file

        private void btnHoanTat_Click(object sender, EventArgs e)
        {
            if (!dxValidationProvider2.Validate())
            {
                if (cbbPath.Text == "")
                {
                    cbbPath.Focus(); return;
                }
                else
                {
                    cbbSheetName.Focus(); return;
                }
            }
            

            DataTable dt = sv.excelToDatatable(cbbPath.Text, "select MSSV,HoLot,Ten,NgaySinh,NoiSinh,GioiTinh,KhoaHoc,MaLop from [" + cbbSheetName.Text + "]");
            DataColumn cl = new DataColumn("IsActive", Type.GetType("System.Boolean"));
            dt.Columns.Add(cl);

            if (dt.Rows.Count > 0)
            {
                int dem = 0; int countRow = dt.Rows.Count; 
                try
                {
                    sv.openConnect();
                    MySqlParameter[] pr;
                    
                    foreach (DataRow row in dt.Rows)
                    {

                        if ((row[0].ToString() != "" && row[0]!= null) && (row["MaLop"].ToString()!="" && row["MaLop"]!=null) && row["HoLot"]!=null && row["HoLot"].ToString().Trim()!="" && row["Ten"]!=null && row["Ten"].ToString().Trim()!="" )
                        {
                            //xư lí giới tính
                            if (row[5]!=null || row[5].ToString() != "")
                                row[5] = false;
                            else
                                row[5] = true;

                            row["IsActive"] = true;
                            dt.AcceptChanges();
                            //them
                            try
                            {
                                pr = getPara(row[0].ToString(), row[1].ToString(), row[2].ToString(), row[3].ToString(), row[4].ToString(),bool.Parse(row[5].ToString()), row[6].ToString(), row[7].ToString(), true);
                                
                            }
                            catch (Exception)
                            {
                                continue;
                            }

                            if (sv.executeNonqueryStore("dmu_proSThemSV1", pr))
                            {
                                dem++;
                                dt.AcceptChanges();
                                try
                                {
                                    ucSV.dtSV.ImportRow(row);
                                }
                                catch (Exception){}
                            }
                        }
                    }

                    dt.Dispose();
                    sv.closeConnect();
                    hp.showMes("Thêm thành công " + dem + "/" + countRow , -1);
                }
                catch(Exception et)
                {
                    hp.showMes("Có lỗi vui lòng thử lại " + et.Message, 1);
                         
                }

            }
        }
       
        private void cbbPath_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            string path = hp.openFile();
            if (path != "")
            {
                try
                {
                    cbbPath.Text = path;
                    cbbSheetName.Properties.Items.Clear();
                    cbbSheetName.Properties.Items.AddRange(sv.getEcelSheetName(path));
                    cbbSheetName.Focus();
                }
                catch (Exception et) { hp.showMes("Lỗi khi load sheetName. Vui lòng thử lại ! " + et.Message, 1); }
            }
        }

        #endregion
 */

        private void chkNam_CheckedChanged(object sender, EventArgs e)
        {
          /*  if (chkNam.Checked)
            {
                gt = true;
            }
            else
            {
                gt = false;
            }*/
        }

        private void frmThemSinhVien_Load(object sender, EventArgs e)
        {
            if (!ucSV.them)
                this.Size = new Size(652, 261);
        }

        private void txtMa_KeyPress(object sender, KeyPressEventArgs e)
        {
           /* if (e.KeyChar == 13)
            {
                EventArgs et = new EventArgs();
                btnLuu_Click(sender, et);
            }*/
        }

       
        
       

    }
}